﻿using dll_CameraSelecter.ViewModels;
using Glue_Data.Views;
using Glue_FrameWork.ViewModels.Param;
using MathFlowLib;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using MvvmLib;

namespace LaserLineDetectorLib.ViewModel
{
    /// <summary>
    /// 调度参数类
    /// </summary>
    [Serializable]
    public class Vm_LaserLineDetector_Dispatch_Param : GParam
    {

        /// <summary>
        /// 相机选择参数
        /// </summary>
        [Attribute_GAutoView("相机选择")]
        public Vm_CameraSelecter_Param Param_CameraSelector
        {
            get { return _Param_CameraSelector; }
            set
            {
                if (_Param_CameraSelector != value)
                {
                    _Param_CameraSelector = value;
                    this.OnPropertyChanged("Param_CameraSelector");
                }
            }
        }
        private Vm_CameraSelecter_Param _Param_CameraSelector = new Vm_CameraSelecter_Param();


        /// <summary>
        /// ROI参数
        /// </summary>
        [Attribute_GAutoView("图像ROI")]
        public Vm_ImageRoi_Param Param_ImageRoi
        {
            get { return _Param_ImageRoi; }
            set
            {
                if (_Param_ImageRoi != value)
                {
                    _Param_ImageRoi = value;
                    this.OnPropertyChanged("Param_ImageRoi");
                }
            }
        }
        private Vm_ImageRoi_Param _Param_ImageRoi = new Vm_ImageRoi_Param();


        /// <summary>
        /// 算法参数
        /// </summary>
        [Attribute_GAutoView("算法")]
        public Vm_MathFlow_Line_Param Param_Line
        {
            get { return _Param_Line; }
            set
            {
                if (_Param_Line != value)
                {
                    _Param_Line = value;
                    this.OnPropertyChanged("Param_Line");
                }
            }
        }
        private Vm_MathFlow_Line_Param _Param_Line = new Vm_MathFlow_Line_Param();

    }
}
